package com.huitone.gddw.service;

import java.util.List;
import java.util.Map;

import com.huitone.gddw.dao.entity.RedUserList;
import com.huitone.gddw.model.support.QueryPage;
import com.huitone.gddw.service.dto.RedUserListDTO;

/**
 * 红名单用户接口
 * @author Weiliyu
 *
 */
public interface IRedUserListService {

	/**
	 * 分页查询
	 * @param page QueryPage
	 * @return QueryPage
	 */
	QueryPage<RedUserListDTO> selectPage(QueryPage<RedUserList> page);
	
	/**
	 * 根据主键查询唯一记录
	 * @param recId 记录ID
	 * @return RepeatRule
	 */
	RedUserList selectByPrimaryKey(String recId);
	
	/**
	 * 根据主键获取修改页面数据
	 * @param recId 记录ID
	 * @return RedUseDTO
	 */
	RedUserListDTO toUpdate(String recId);
	
	/**
	 * 更新
	 * @param entity RedUse
	 */
	void changeStatus(RedUserList entity);
	
	/**
	 * 保存
	 * @param entity RedUse
	 */
	void save(RedUserList entity);
	
	/**
	 * 更新
	 * @param entity RedUse
	 */
	void update(RedUserList entity);
	
	/**
	 * 根据主键删除记录
	 * @param recId 记录ID
	 */
	void delete(String recId);
	
	/**
	 * 根据条件获取记录
	 * @param params 查询参数
	 * @return List
	 */
	List<RedUserListDTO> getRecord(Map<String, Object> params);
	
	/**
	 * 批量保存
	 * @param list
	 * @return int
	 */
	int saveBatch(List<RedUserList> list);
	
	/**
	 * 根据多个文件ID删除记录
	 * @param list 多个文件ID
	 */
	void delAllByFileIds(List<String> list);
	
	/**
	 * 根据多个文件ID更改状态
	 * @param fileIds 多个文件ID
	 * @param status 状态
	 */
	void changeStatusByFileIds(String[] fileIds, String status);
	
	/**
	 * 根据手机号查询红名单用户
	 * @param phone
	 * @return
	 */
	List<RedUserList> selectByphone(String phone);
	
}
